This invention relates to machining.
A machining system typically includes a precision cutting instrument, such as high-speed spindle, for processing a work piece to produce a mechanical part. A control unit within the machining system interprets a xe2x80x9cpart programxe2x80x9d that includes a series of machine movement commands for directing the cutting instrument to traverse the work piece and ultimately produce the desired part. The control unit processes each command sequentially until the end of the program has been reached.
For each command, the control unit moves the cutting instrument within a space defined by a three-dimensional coordinate system noted as X, Y and Z. The X and Y-axis are typically oriented to form a horizontal plane while the Z-axis represents the vertical axis perpendicular to the X, Y plane. The machining system is designed to position its cutting instrument at any coordinate point within the area bounded by the X and Y axes. Additional commands operate other functions of the machining system such as tool selection, speed and coolant flow.
The cutting instrument starts at an initial starting position, typically location 0,0,0, and moves along the three axes sequentially, command by command, until all of the commands are executed. Three-dimensional parts are produced by placing the work piece on the X, Y plane and removing a portion of the work piece with the cutting instrument as it traverses along the X, Y plane. Continued repeated moves in the X direction, the Y direction and the Z-axis allow the cutting mechanism to traverse any three-dimensional profile until the part is fully achieved. The motion of the cutting instrument over the work piece is referred to as a tool path, collectively formed by as series of tool path segments. When the end of a specific tool path segment is reached, the cutting instrument is typically commanded to xe2x80x9cstep-overxe2x80x9d an offset in the X direction or the Y direction. This offset is referred to as the distance between the tool paths. The cutting instrument then makes another pass over the work piece along an adjacent tool path segment. At specific locations along the tool paths, the commands direct the cutting instrument to traverse in the X, Y plane and also move along the Z-axis. This process continues until all of the tool path segments have been traversed and the part has been produced.
Many conventional machining systems operate in this manner to produce three-dimensional parts one at a time. Some machining systems have more than one cutting mechanism fixed to the Z-axis on a common beam and can produce several copies of a three-dimensional part at the same time.
Generally, the invention is directed to a machining system having a plurality of independently movable precision cutting instruments configured to simultaneously generate a number of different parts. In one embodiment, the cutting instruments are capable of independent motion along the Z-axis and are mounted on a common beam that traverses the parts in an X, Y plane. Merge software modules merge a number of part programs into a single master program. A control unit interprets the master program and controls the machining system to generate the parts. The software modules generate the master program such that all of the Z-axis move commands within the separate part programs are sequenced along a single X, Y traverse path based on a defined cutting strategy and cutting direction. In this manner, the machining system simultaneously produces a number of different parts.
According to another aspect, the invention is directed to a method in which a plurality of part programs are merged into a master part program. The machining system is controlled according to the master part program in order to simultaneously produce a plurality of parts. To merge the part programs, a group starting point is calculated for all of the cutting instruments. All Z-axis move commands within the part programs are identified and modified such that an X, Y location in the master part program for each Z-axis move command is computed relative to the calculated starting point. A set of X, Y master program move commands is then generated to sequentially move the cutting instruments to the modified X, Y locations of the combined Z-axis move commands.